home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1990 April / 1990-04.d64 / dir example (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  1KB  |  61 lines

  1. 0 rem
  2. 10 ' copyright 1990 compute! publications, inc. - all rights reserved
  3. 20 'directory (bassem)
  4. 30 (NULL) $a000,$b000:(NULL)usr 1,0:(NULL)sqr 1
  5. 40 (NULL)usr 1,0:' no warnings for zeroes
  6. 50 (NULL)sqr 1:' write to memory
  7. 60 'write "dir.ml,p,w":'create ml file
  8. 70 (NULL)rnd $c000:' start address
  9. 80 (NULL) 1
  10. 90 '
  11. 100 (NULL)setlfs=65466
  12. 110 (NULL)setnam=65469
  13. 120 (NULL)open=65472
  14. 130 (NULL)chkin=65478
  15. 140 (NULL)chrin=65487
  16. 150 (NULL)chrout=65490
  17. 160 (NULL)close=65475
  18. 170 (NULL)clrchn=65484
  19. 180 (NULL)zp=251
  20. 190 (NULL)linprt=48589
  21. 200 '
  22. 210 (NULL)clr #1
  23. 220 (NULL)cmd #8:' device number
  24. 230 (NULL)sys #0
  25. 240 (NULL)list (NULL)setlfs
  26. 250 (NULL)clr #2:' length of filename
  27. 260 (NULL)cmd #<(NULL)filenm:' name is "$0" for directory
  28. 270 (NULL)sys #>(NULL)filenm
  29. 280 (NULL)list (NULL)setnam
  30. 290 (NULL)list (NULL)open
  31. 300 (NULL)cmd #1:' input from file 1
  32. 310 (NULL)list (NULL)chkin
  33. 320 (NULL)list (NULL)chrin:' discard track and sector bytes
  34. 330 (NULL)list (NULL)chrin
  35. 340 (NULL)newent (NULL)list (NULL)chrin
  36. 350 (NULL)/ (NULL)zp
  37. 360 (NULL)list (NULL)chrin
  38. 370 ora (NULL)zp:' check for two consecutive zeroes indicating last entry
  39. 380 (NULL)input# (NULL)exit
  40. 390 (NULL)clr #13:' print <cr> for each entry
  41. 400 (NULL)list (NULL)chrout
  42. 410 (NULL)pause (NULL)clr 653:' shift key pause
  43. 420 and #1
  44. 430 (NULL)read (NULL)pause
  45. 440 (NULL)list (NULL)chrin:' get low byte
  46. 450 (NULL)or
  47. 460 (NULL)list (NULL)chrin:' get high byte
  48. 470 (NULL)list (NULL)linprt:' print the number of blocks
  49. 480 (NULL)clr #32:' insert a space
  50. 490 (NULL)list (NULL)chrout
  51. 500 (NULL)loop (NULL)list (NULL)chrin
  52. 510 (NULL)input# (NULL)newent:' zero byte ends an entry
  53. 520 (NULL)list (NULL)chrout
  54. 530 (NULL)read (NULL)loop:' loop back for more
  55. 540 (NULL)exit (NULL)clr #1:' all done, close and reset channels
  56. 550 (NULL)list (NULL)close
  57. 560 (NULL)list (NULL)clrchn
  58. 570 (NULL)not
  59. 580 (NULL)filenm (NULL)abs "$0"
  60. 590 (NULL) 2
  61.